#!/usr/bin/env ruby
# -*- coding: UTF-8 -*-
#-------------------------------------------------------
#	FileName	: 类和对象.rb
#	Author		：hpy
#	Date		：2021年06月09日
#	Description	：
#-------------------------------------------------------

=begin
    1.局部变量：局部变量以小写字母或 _ 开始
    2.实例变量：实例变量可以跨任何特定的实例或对象中的方法使用。实例变量在变量名之前放置符号（@）。
    3.类变量 ：类变量可以跨不同的对象使用。类变量属于类，且是类的一个属性。类变量在变量名之前放置符号（@@）。
    4.全局变量：类变量不能跨类使用。如果您想要有一个可以跨类使用的变量，您需要定义全局变量。全局变量总是以美元符号（$）开始。
=end 

# 定义我的类
class Customer 
    @@no_of_customer=12 # 类变量
    def initialize(id,name,addr)  #想要声明带参数的 new 方法时，需要在创建类的同时声明方法 initialize。
        @cust_id=id
        @cust_name=name
        @cust_addr=addr 
    end
    def hello #方法， 以小写字母开头 
        puts "hello"
    end 

    def info
        print "id=#@cust_id , name=#@cust_name\n" #当想要在一个单行上显示实例变量的文本和值时，您需要在 puts 语句的变量名前面放置符号（#）。
    end

    def getId()
        return @cust_id 
    end
end

cust1=Customer.new(1,"yhp","wuhan") #创建对象
cust2=Customer.new(2,"yx","wuhan") #创建对象

cust1.hello()  #调用方法
cust1.info()
cust2.info()

puts cust1.getId()




